package com.fund.main.entity;


import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fund.serializer.LongToStringSerializer;
import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;

import static com.fund.utils.AppDateUtil.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
import static com.fund.utils.AppDateUtil.TIME_ZONE_DEFAULT;

/**
 * 用户养基表(TSupport)表实体类
 *
 * @author makejava
 * @since 2023-02-15 15:04:19
 */
@Data
@Accessors(chain = true)
@SuppressWarnings("serial")
public class TSupport extends Model<TSupport> {


    @TableId
    @JsonSerialize(using = LongToStringSerializer.class)
    private Long supId;
    @JsonSerialize(using = LongToStringSerializer.class)
    private Long userId;
    /**
     * （去获取基金代码、基金name、基金净值/估算）
     */
    @JsonSerialize(using = LongToStringSerializer.class)
    private Long fundId;
    /**
     * 基金昨日净值
     */
    private Double fundZrjz;
    /**
     * （初始+申购金额+卖出金额）  *为0就不显示*
     */
    private Double supMoney;
    /**
     * 已申购基金成本   （  基金金额  /   份额 ）
     */
    private Double supPrice;
    /**
     * 已申购基金份额  （初始+申购份额+卖出份额）  ?份额不变的
     */
    private Double supNum;
    /**
     * 养基收益（基金金额    -  （成本净值*份额））
     */
    private Double supProfit;
    /**
     * 基金仓位金额
     */
    private Double supTotalMoney;
    /**
     * 养基日期
     */
    @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND, timezone = TIME_ZONE_DEFAULT)
    private Date suoDate;
    /**
     * 养基状态（0，默认正在添加，1 基金金额为0，2成功养鸡） 第二天才养鸡成功
     */
    private String supStatus;


    /**
     * 获取主键值
     *
     * @return 主键值
     */
    @Override
    protected Serializable pkVal() {
        return this.supId;
    }
}

